#ifndef SERVERPARAM_H
#define SERVERPARAM_H

//const
//Server parameters

#include <string>

using namespace std;


class ServerParam
{
    string M_HOST;
    int M_PORT;

    int M_PLAY_MODE;

public:

    const static int SIMULATOR_STEP = 100;
    const static double FIELD_WITH = 68;
    const static double FIELD_LENGTH = 103;
    const static double BALL_DECAY = 0.94;
    const static double PLAYER_DECAY = 0.4;
    const static double KICKABLE_MARGIN = 0.7;
    const static double KICK_POWER_RATE = 0.027;
    const static double DASH_POWER_RATE = 0.006;
    const static double BALL_SPEED_MAX = 3.0;
    const static double PLAYER_SPEED_MAX = 1.05;
    const static double PLAYER_ACCEL_MAX = 1.0;
    const static double BALL_ACCEL_MAX = 2.7;

    void setHost(string s) { M_HOST = s; }
    string getHost() { return M_HOST; }

    void setPort(int p) { M_PORT = p; }
    int getPort() { return M_PORT; }

    void setPlayMode(int p) { M_PLAY_MODE = p; }
    int getPlayMode() { return M_PLAY_MODE; }

    static ServerParam & instance();
    void init(int, char**);
};

#endif // SERVERPARAM_H
